Matthias Clasen [Tue, 3 Jan 2012 20:02:49 +0000 (15:02 -0500)]
GtkApplication: Add an inhibit api
This lets applications block logout and similar actions ahead
of time. Currently only implemented for D-Bus, but Windows has
very similar API since Vista.
Matthias Clasen [Tue, 3 Jan 2012 19:52:29 +0000 (14:52 -0500)]
GtkApplication: Add logout notification
This is fairly basic, allowing applications to learn when
the session manager is about to end the session, and possibly
block this. The only implementation at this point is using the
org.gnome.SessionManager D-Bus interface of gnome-session. It should
be straightforward to port the EggSMClient implementations for
Windows and OS X.
Chun-wei Fan [Sat, 7 Jan 2012 03:21:46 +0000 (11:21 +0800)]
Update Visual C++ property sheets
"Install" (and hence compile with glib-compile-schemas.exe) the new
org.gtk.WindowState.gschema.xml gschema file.
Ryan Lortie [Fri, 6 Jan 2012 20:37:05 +0000 (15:37 -0500)]
GtkWindow: new API to store state in GSettings
https://bugzilla.gnome.org/show_bug.cgi?id=667438
Ryan Lortie [Fri, 6 Jan 2012 15:53:57 +0000 (10:53 -0500)]
GtkBuilder: support parsing GVariant properties
https://bugzilla.gnome.org/show_bug.cgi?id=667394
Piotr Drąg [Fri, 6 Jan 2012 20:18:28 +0000 (21:18 +0100)]
Updated POTFILES.skip
Rob Bradford [Fri, 6 Jan 2012 16:49:22 +0000 (16:49 +0000)]
wayland: Break an implicit grab when asking to be resized
An implicit grab is created inside GTK+ when the button is pressed down on a
window. The semantics of wl_shell_surface_resize means that you don't get a
corresponding release event that would ordinarily break the implicit grab. So
we must do it as part of the resize request.
Rob Bradford [Fri, 6 Jan 2012 16:48:13 +0000 (16:48 +0000)]
wayland: Make the event source use _gdk_display_get_next_serial
Rob Bradford [Fri, 6 Jan 2012 16:47:53 +0000 (16:47 +0000)]
wayland: Implement the get_next_serial vfunc on GdkDisplay
Zeeshan Ali (Khattak) [Thu, 5 Jan 2012 01:09:27 +0000 (03:09 +0200)]
gtkspinbutton: Don't hilight buttons when !editable
Don't hilight the buttons on mouse over when 'editable' property is set to
'FALSE.
https://bugzilla.gnome.org/show_bug.cgi?id=667229
Kristian Høgsberg [Fri, 6 Jan 2012 15:10:42 +0000 (15:10 +0000)]
wayland: The shared cursors are now installed in the weston directory
Signed-off-by: Rob Bradford <rob@linux.intel.com>
Matthias Clasen [Tue, 3 Jan 2012 19:39:26 +0000 (14:39 -0500)]
GtkApplication: Rename a member for clarity
'session' is a bit ambiguous (and GtkApplication may grow session
management support at some point), so rename the bus connection
to 'session_bus'.
Matthias Clasen [Fri, 6 Jan 2012 04:21:30 +0000 (23:21 -0500)]
Another attempt at fixing menu positioning corner cases
The code for moving the menu into monitor / workarea was duplicated,
once for the push-in scenario and once for without. The problem with
the second case is that we've stored the menu position before adjusting
it. That made us remember an out-of-monitor position that then later
triggered _another_ copy of this code in the size-request implementation.
Unify this to only have one copy of code, and only store the menu
position after adjusting it to be inside the monitor. This fixes both
statusicon menus that get popped up from the panel, outside the workarea,
to not have scroll arrows, and the gedit language menu which was not
placed in the monitor at all after the initial workarea commit.
As a side-effect of this change, we now make large scrolling menus
occupy the full height of the workarea. Before this change, we were
keeping either the top or bottom edge put while shrinking the menu
to fit in the monitor.
https://bugzilla.gnome.org/show_bug.cgi?id=667249
Benjamin Otte [Fri, 6 Jan 2012 04:23:15 +0000 (05:23 +0100)]
label: Avoid deprecation warning
Benjamin Otte [Fri, 6 Jan 2012 04:17:46 +0000 (05:17 +0100)]
label: Actually mark visited labels as visited
A recalculate will clear the labels and compute them again, which will
clear the information if something was visited...
Benjamin Otte [Fri, 6 Jan 2012 04:15:18 +0000 (05:15 +0100)]
reftests: Add a test for latest commit
We want to make sure we notice when we mess up label attribute ordering
again...
Benjamin Otte [Fri, 6 Jan 2012 04:10:50 +0000 (05:10 +0100)]
label: Make attr_list_merge() use sane merging rules
Instead of "attribute with later start index wins, make sure the
attribute list that is merged from takes precedence. This now gives the
multiple attribute lists we use in the label an order:
1) gtk_label_set_attributes()
These attributes override everything. It's what the function's there
for after all.
2) markup of label
Other user-specified attributes come next.
3) attributes for links
When we apply custom attributes on parts of the text, we put them
last. We don't want to mess with what the user does. Also, we change
color and underline, so we usually have something to show.
Benjamin Otte [Fri, 6 Jan 2012 04:07:36 +0000 (05:07 +0100)]
label: Rename variable
The effective attributes aren't that anymore. They're now just the
attributes from the parsed markup.
Benjamin Otte [Fri, 6 Jan 2012 04:06:29 +0000 (05:06 +0100)]
label: Don't excessively recalculate
We don't merge attributes anymore, so no need to call the function that
used to do this job.
Benjamin Otte [Fri, 6 Jan 2012 04:04:13 +0000 (05:04 +0100)]
label: Redo attribute application
- Don't compute link color attributes until layout creation
This is useful as a performance enhancement, because we don't have to
lookup the property after setting the text, so multiple markup sets
don't cost style lookups.
- Don't merge attrs into effective_attrs
We do this when applying link colors now. Keeping them separate allows
invalidating them separately.
Benjamin Otte [Fri, 6 Jan 2012 03:25:02 +0000 (04:25 +0100)]
ilabel: Redo gtk_label_get_link_colors()
Don't pass out an allocated color, assign it instead. Gets rid of having
to call gdk_color_free() all the time.
Benjamin Otte [Fri, 6 Jan 2012 01:53:12 +0000 (02:53 +0100)]
label: Split out function that merges attr lists
Benjamin Otte [Fri, 6 Jan 2012 01:04:01 +0000 (02:04 +0100)]
gtk-demo: Prove that links work fine now
Also, doodling is fun.
Benjamin Otte [Fri, 6 Jan 2012 00:52:32 +0000 (01:52 +0100)]
label: Redo links parsing
Instead of getting confused by applied underline or color tags in the
regular markup, we store the link start/end when we actually parse the
text. As a bonus, we can avoid rescanning links when creating the
markup.
Benjamin Otte [Thu, 5 Jan 2012 16:06:00 +0000 (17:06 +0100)]
label: Move function into only caller
Benjamin Otte [Thu, 5 Jan 2012 15:50:49 +0000 (16:50 +0100)]
API: Deprecate key snooping
You really shouldn't be doing this. If you have to, you can use
gdk_window_add_filter() or listen to raw events on XI2.
Benjamin Otte [Thu, 5 Jan 2012 15:48:14 +0000 (16:48 +0100)]
a11y: Remove keysnooping support
As previously announced, key snooping is something that we should not
support in GTK. In particular because AT-SPI made every key press a
synchronous DBUS call / spawned a nested main loop with the key
snoopers. This breaks responsiveness, order of key presses and internal
consistency when the AT decides to remove key events.
Zeeshan Ali (Khattak) [Thu, 5 Jan 2012 01:09:06 +0000 (03:09 +0200)]
gtkspinbutton: Ignore keynav when !editable
Don't allow changing of value through keyboard when 'editable' property is
set to 'FALSE.
https://bugzilla.gnome.org/show_bug.cgi?id=667229
Benjamin Berg [Wed, 28 Dec 2011 00:02:28 +0000 (01:02 +0100)]
Improve PICKONE_* handling in GtkPrinterOptionWidget (bug #543520)
This patch modifies GtkPrinterOptionWidget to support loading them
again. It also allows the user to enter values from the dropdown list
to select the item.
Benjamin Berg [Sat, 24 Dec 2011 16:26:32 +0000 (17:26 +0100)]
Set cups Custom print options correctly (bug #543520, patch by Marek Kašík)
This patch fixes the cups print backend to pass Custom options with
the "Custom." prefix to cups if neccessary.
Matthias Clasen [Thu, 5 Jan 2012 19:05:47 +0000 (14:05 -0500)]
Use the right icon-name for missing images
Patch by Erik van Pienbroek, bug 629878.
Rob Bradford [Thu, 5 Jan 2012 16:32:09 +0000 (16:32 +0000)]
wayland: Set a default cursor when the window cursor is set to NULL
This change follows on from a change in semantics in Wayland where calling
wl_input_device_attach with nil would make the compositor set the pointer
sprite to it's default cursor sprite.
Marek Kasik [Thu, 5 Jan 2012 12:17:46 +0000 (13:17 +0100)]
GtkPrintUnixDialog: Hide unused tabs
Don't show tabs which are empty. This is related to
the recent GtkTable -> GtkGrid conversion. (#663479)
Xan Lopez [Thu, 5 Jan 2012 11:22:05 +0000 (12:22 +0100)]
Revert "gtksettings.c: Do not use GdkColor API"
This reverts commit
baef3e5f2470cb727407e45a655cec59ebd4a9e5.
This broke the Adwaita theme pretty severely, so I don't think it can
be right. See: http://i.imgur.com/Rq7wc.png
Javier Jardón [Wed, 4 Jan 2012 14:57:54 +0000 (15:57 +0100)]
gtksettings.c: Do not use GdkColor API
Javier Jardón [Wed, 4 Jan 2012 14:57:33 +0000 (15:57 +0100)]
gtkcolorsel.c: Do not use GdkColor API
Javier Jardón [Mon, 2 Jan 2012 03:20:59 +0000 (04:20 +0100)]
gtk/*: Use g_list_free_full() convenience function
Javier Jardón [Tue, 3 Jan 2012 01:22:10 +0000 (02:22 +0100)]
modules/*: Use g_list_free_full() convenience function
Javier Jardón [Tue, 3 Jan 2012 01:18:50 +0000 (02:18 +0100)]
gdk/*: Use g_list_free_full convenience function
Javier Jardón [Mon, 2 Jan 2012 03:09:00 +0000 (04:09 +0100)]
tests: Use g_list_free_full() convenience function
Ryan Lortie [Wed, 4 Jan 2012 21:32:39 +0000 (16:32 -0500)]
GtkComboBoxText: allow id='' tag in builder markup
Presently, GtkComboBoxText lets you list the items for it in the
GtkBuilder markup like so:
<items>
<item translatable='yes'>Red</item>
<item translatable='yes'>Blue</item>
</items>
but has no way to set the "id" column for added items. Add an id='' tag
for that purpose so that you can do:
<item id='red' translatable='yes'>Red</item>
https://bugzilla.gnome.org/show_bug.cgi?id=667319
Xan Lopez [Fri, 30 Dec 2011 20:09:21 +0000 (21:09 +0100)]
GtkNotebook: fix crash when DnD tabs between windows
When doing DnD between windows the tab label is set as the child of
the DnD info window. If this is happening the remove method of
GtkNotebook should not unparent the tab label, since it's been already
unparented, belongs to the DnD window and will be properly destroyed
when the DnD is over.
https://bugzilla.gnome.org/show_bug.cgi?id=639875
Javier Jardón [Tue, 3 Jan 2012 17:12:15 +0000 (18:12 +0100)]
gtk/gtkcolorbutton.c: Do not use deprecated GdkColor api
Zeeshan Ali (Khattak) [Tue, 3 Jan 2012 22:44:24 +0000 (00:44 +0200)]
gtkspinbutton: Respect value of inherited 'editable' property
When this property is set to 'FALSE', user's click on the buttons
should not actually update the value but rather result in error bell.
https://bugzilla.gnome.org/show_bug.cgi?id=667229
Federico Mena Quintero [Tue, 3 Jan 2012 21:05:39 +0000 (15:05 -0600)]
treeview: bgo#666685 - Crash when toggling the selected status of a row
The refactoring from
e01af5c5c seems to have caused this inadvertently.
Signed-off-by: Federico Mena Quintero <federico@gnome.org>
Javier Jardón [Tue, 3 Jan 2012 16:52:34 +0000 (17:52 +0100)]
gtkcolorsel: Do not use deprecated GdkColor api
Javier Jardón [Tue, 3 Jan 2012 16:23:38 +0000 (17:23 +0100)]
gtkcellview: Do not use deprecated GdkColor api
Chun-wei Fan [Fri, 30 Dec 2011 09:20:22 +0000 (17:20 +0800)]
gtk/gtkprivate.c: Include stdlib.h
Include stdlib.h for getenv to avoid C4013/implicit declaration of ...
warnings
Javier Jardón [Tue, 3 Jan 2012 02:35:02 +0000 (03:35 +0100)]
test/testgtk.c: Fix compilation warning
Matthias Clasen [Tue, 3 Jan 2012 15:51:13 +0000 (10:51 -0500)]
Fix problems with DND on some X servers
When the X server does not support the shape extension (as some
vnc implementations seem to), our DND code was always seeing
an empty input shape, so drops always missed their target.
http://bugzilla.gnome.org/show_bug.cgi?id=620240
Emmanuele Bassi [Tue, 5 Oct 2010 13:07:32 +0000 (14:07 +0100)]
Add symbolic constants for event emission control
Similar to https://bugzilla.gnome.org/show_bug.cgi?id=631413 in GLib,
GTK+ should have symbolic constants for controlling the event handling
instead of a mere boolean value.
The GDK_EVENT_PROPAGATE and GDK_EVENT_STOP constants map to FALSE and
TRUE respectively.
https://bugzilla.gnome.org/show_bug.cgi?id=631414
Ignacio Casal Quinteiro [Sun, 1 Jan 2012 21:38:04 +0000 (22:38 +0100)]
textdisplay: use g_list_free_full
Kjell Ahlstedt [Wed, 28 Dec 2011 15:32:32 +0000 (16:32 +0100)]
comboboxtext: Set entry-text-column and id-column props in the constructor
This is cleaner than setting the value in the _new() functions and
makes binding and GtkBuilder instantiation easier. Bug #612396, comment 65.
Chun-wei Fan [Fri, 30 Dec 2011 08:51:26 +0000 (16:51 +0800)]
Bug 667018-gtk/gtkwindow.c: Include deprecated/gtkstyle.h
This is needed for the prototype of gtk_widget_reset_rc_styles, to avoid
C4013/implicit declaration of ... warnings of that function
Chun-wei Fan [Fri, 30 Dec 2011 08:49:49 +0000 (16:49 +0800)]
gtk/gtkspinbutton.c: Remove lingering ';'
...so that C89 compilers will not complain
Yaron Shahrabani [Fri, 30 Dec 2011 09:12:58 +0000 (11:12 +0200)]
Updated Hebrew translation.
Chun-wei Fan [Fri, 30 Dec 2011 08:44:55 +0000 (16:44 +0800)]
gtk/Makefile.am: Update VS projects completion
Take the sources in gtk/deprecated/ into account-VS does not like '/'
in file paths.
Chun-wei Fan [Fri, 30 Dec 2011 08:40:06 +0000 (16:40 +0800)]
Update Visual C++ projects
-Update include paths for the GTK+ main projects to be consistent across
the board
-Update demo projects to add a new demo source file, transparent.c
Chun-wei Fan [Fri, 30 Dec 2011 08:21:38 +0000 (16:21 +0800)]
Update gdk/gdkconfig.h.win32
Apparently the deprecation warning macros are placed into gdkconfig.h
during the configure stage, so put these in the pre-configured
gdkconfig.h.win32 as well, as their definitions are needed for all builds.
Matthias Clasen [Fri, 30 Dec 2011 07:01:15 +0000 (02:01 -0500)]
Remove an unnecessary warning
Don't warn if there's more than one mnemonic label for a widget,
and skip invisible labels.
Bug 665015
Matthias Clasen [Fri, 30 Dec 2011 05:38:06 +0000 (00:38 -0500)]
Add a Since tag
gtk_css_provider_to_string is a post-3.0 addition.
Fixes bug 659516
Matthias Clasen [Fri, 30 Dec 2011 05:28:15 +0000 (00:28 -0500)]
Drop -uninstalled.pc files
This has already been done in GLib, so follow suit here.
Matthias Clasen [Fri, 30 Dec 2011 04:43:28 +0000 (23:43 -0500)]
XIM: gracefully deal with non-X backends
Patch by Young-Ho Cha, bug 660309.
Matthias Clasen [Fri, 30 Dec 2011 04:38:16 +0000 (23:38 -0500)]
GtkImContextSimple: fix tentative match handling
When switching to the compact table format, we inadvertedly lost
the 'tentative match' handling which allows to complete longer
compose sequences even if a prefix is a complete sequence.
This was pointed out in bug 666710.
Matthias Clasen [Wed, 28 Dec 2011 16:32:44 +0000 (11:32 -0500)]
Cosmetic changes to comments
Piotr Drąg [Thu, 29 Dec 2011 16:49:42 +0000 (17:49 +0100)]
Updated POTFILES.skip
Benjamin Otte [Wed, 28 Dec 2011 13:34:54 +0000 (14:34 +0100)]
settings: Cache style properties
This way we don't need to compute them every lookup. (That's not the
real reason though - the real reason is that I want to add new APIs that
require the caching because they return consts).
Benjamin Otte [Wed, 28 Dec 2011 14:46:15 +0000 (15:46 +0100)]
modifierstyle: Move Private typedef to public header
Benjamin Otte [Thu, 29 Dec 2011 09:02:54 +0000 (10:02 +0100)]
reftests: Add test for empty grid with spacing
This used to crash.
https://bugzilla.gnome.org/show_bug.cgi?id=660139
Matthias Clasen [Wed, 28 Dec 2011 16:20:47 +0000 (11:20 -0500)]
Fix problems with sticky handling
Reading a card32 property into a long may lead to undefined high
bits, so mask them off. Also, make the conditions for setting and
unsetting the stick flag opposites, to avoid unintended changes.
Patch by John Lindgren, bug 666842
Matthias Clasen [Wed, 28 Dec 2011 16:16:54 +0000 (11:16 -0500)]
Update various EWMH interactions
The current EWMH has added 'source indication' fields to a number
of client messages. Set these to 1 to indicate a regular client.
Also fill the button field of _NET_WM_MOVERESIZE.
Javier Jardón [Mon, 26 Dec 2011 16:12:20 +0000 (17:12 +0100)]
tests/testgtk: Do not use GdkColor-based api
Daniel Mustieles [Mon, 26 Dec 2011 10:10:17 +0000 (11:10 +0100)]
Updated Spanish translation
Ignacio Casal Quinteiro [Sun, 25 Dec 2011 17:13:51 +0000 (18:13 +0100)]
gtktextlayout: use g_slice for GtkTextLineDisplay
Ignacio Casal Quinteiro [Sun, 25 Dec 2011 16:49:03 +0000 (17:49 +0100)]
gtktextbtree: use g_slice
Benjamin Otte [Fri, 23 Dec 2011 21:23:40 +0000 (22:23 +0100)]
themingbackground: Avoid erroring cairo context
Benjamin Otte [Fri, 23 Dec 2011 21:21:45 +0000 (22:21 +0100)]
tests: Make widget-factory close when window is closed
Benjamin Otte [Fri, 23 Dec 2011 16:13:42 +0000 (17:13 +0100)]
cssprovider: Fix leak
Thanks to the heroic valgrinding efforts of Olivier Sessnik, another
leak could be plugged.
Matthias Clasen [Fri, 23 Dec 2011 04:45:28 +0000 (04:45 +0000)]
Fix scroll_offset handling
scroll_offset can be negative here, so replace a > 0 test
by != 0.
Matthias Clasen [Fri, 23 Dec 2011 04:44:17 +0000 (04:44 +0000)]
Only push the menu in if the position function said so
Matthias Clasen [Fri, 23 Dec 2011 04:42:12 +0000 (04:42 +0000)]
Use gtk_widget_get_allocated_width/height where it makes sense
Matthias Clasen [Fri, 23 Dec 2011 00:38:59 +0000 (00:38 +0000)]
Remove an unneeded variable
Matthias Clasen [Fri, 23 Dec 2011 00:13:07 +0000 (00:13 +0000)]
Remove an unused struct
Benjamin Otte [Thu, 22 Dec 2011 14:57:21 +0000 (15:57 +0100)]
combobox: Don't allow an individual cell to cheat
Make sure we only set sensitive when the cell is sensitive and visible.
Also avoid invalid memory accesses if no cells existed.
Benjamin Otte [Tue, 20 Dec 2011 14:34:57 +0000 (15:34 +0100)]
widget: Print a g_warning() when a cairo_t is invalid
Only print the warning on internal code, so we aren't too verbose.
Benjamin Otte [Wed, 21 Dec 2011 07:00:45 +0000 (08:00 +0100)]
styleproperties: Move private struct declaration into public header
Benjamin Otte [Thu, 22 Dec 2011 07:29:47 +0000 (08:29 +0100)]
x11: Don't handle focus events for NULL windows
The check was accidentally removed in the refactoring of
2ea328dfbc820c32a6f425805e632cd1aef45258.
Matthias Clasen [Thu, 22 Dec 2011 15:44:28 +0000 (15:44 +0000)]
Revert "x11: Avoid spurious focus events on grabs"
This reverts commit
db4a6040afd3d1cabbb306037e811f37d62e2e76.
This is causing bad focus confusion e.g. in gnome-terminal.
Javier Jardón [Tue, 13 Dec 2011 11:02:13 +0000 (11:02 +0000)]
Deprecate all the public API that is using GdkColor struct
Javier Jardón [Tue, 20 Dec 2011 23:49:39 +0000 (23:49 +0000)]
gtkappchooserwidget: Use g_object_clear()
Ryan Lortie [Wed, 21 Dec 2011 22:14:59 +0000 (17:14 -0500)]
GtkModelMenu: drop extra & added by mistake
Cosimo Cecchi [Wed, 21 Dec 2011 11:20:15 +0000 (12:20 +0100)]
application: don't unconditionally unref the GMenuModel in getters
Both the app-menu and menubar models can be NULL, so we shouldn't
blindly unref them, since g_object_unref() doesn't cope with NULL
pointers.
Cosimo Cecchi [Wed, 21 Dec 2011 11:19:31 +0000 (12:19 +0100)]
application: mark menu/menubar getters as (transfer none)
Since they do not return a reference to the underlying GMenuModel.
Cosimo Cecchi [Wed, 21 Dec 2011 10:29:39 +0000 (11:29 +0100)]
application: use the same variable names in definitions and declarations
gobject-introspection will be confused and mark the methods as not
introspectable otherwise.
Colin Walters [Thu, 25 Aug 2011 18:50:30 +0000 (14:50 -0400)]
GtkAction: Hold a reference to proxy widgets
Previously we expect that a proxy widget holds a reference to the
action via gtk_activatable_do_set_related_action(). However, it
is possible for the widget to still be in a floating state when
it adds itself to the the action.
This is a problem when gtk_action_get_proxies() gets called, because
we return floating objects back to the user. And language bindings
aren't going to be expecting that.
Fix this by calling ref_sink() and unref().
https://bugzilla.gnome.org/show_bug.cgi?id=657367
Matthias Clasen [Tue, 20 Dec 2011 19:10:39 +0000 (14:10 -0500)]
GtkApplicationWindow: fix a typo
And add a link to the screenshots.
Javier Jardón [Mon, 19 Dec 2011 14:09:36 +0000 (14:09 +0000)]
tests/testcombo.c: Use GdkRGBA instead GdkColor
Javier Jardón [Mon, 19 Dec 2011 13:48:16 +0000 (13:48 +0000)]
gtk/gtkcellview.c: Use new GdkRGBA api instead GdkColor one
Javier Jardón [Mon, 19 Dec 2011 13:39:54 +0000 (13:39 +0000)]
gtk/gtktrayicon-x11.c: Use new GdkRGBA api instead GDKColor one
Cosimo Cecchi [Tue, 20 Dec 2011 12:20:56 +0000 (13:20 +0100)]
button: deprecate the inner-border style property
Since we allocate the standard CSS border to the button now, and center
the child accordingly, there's no need for an additional inner-border
style property. Deprecate it and ignore its values.
https://bugzilla.gnome.org/show_bug.cgi?id=666600